package cn.zktr.Personnel.model.service.ouyangpeng;

import java.util.List;
import java.util.Optional;

import javax.transaction.Transactional;

import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.alibaba.fastjson.JSONArray;

import cn.zktr.Personnel.model.dao.ouyangpeng.RetDemDao;
import cn.zktr.Personnel.model.dao.ouyangpeng.RetWaltDao;
import cn.zktr.Personnel.model.dao.zhouyongcong.PmsDeptDao;
import cn.zktr.Personnel.model.dao.zhouyongcong.PmsEmpDao;
import cn.zktr.Personnel.model.dao.zhouyongcong.PmsMgmDao;
import cn.zktr.Personnel.model.dao.zhouyongcong.PmsPotDao;
import cn.zktr.Personnel.model.mappers.ouyangpng.PerRetWAltMapper;
import cn.zktr.Personnel.model.pojos.PerPmsDept;
import cn.zktr.Personnel.model.pojos.PerPmsEmp;
import cn.zktr.Personnel.model.pojos.PerPmsMgm;
import cn.zktr.Personnel.model.pojos.PerPmsPot;
import cn.zktr.Personnel.model.pojos.PerPmsZJnxx;
import cn.zktr.Personnel.model.pojos.PerRetDem;
import cn.zktr.Personnel.model.pojos.PerRetWAlt;

/**
 * @author lenovo
 *招聘申请需求
 */

@Service
@Transactional(rollbackOn=Exception.class)
public class RetWAltService {
	
	@Autowired
	private PerRetWAltMapper retwaltmapper;
	@Autowired
	private RetWaltDao perretdao;
	@Autowired
	private PmsDeptDao deptdao;
	@Autowired
	private PmsEmpDao empdao;
	@Autowired
	private PmsPotDao potdao;
	@Autowired
	private PmsMgmDao mgmdao;
	@Autowired
	private RetDemDao demdao;
	/**
	 * @author lenovo
	 *查询所有申请
	 */
	//招聘申请单
	public List<PerRetWAlt> selectshenqingzz() {
		return retwaltmapper.selectshenqingzz();
	}
	
	//根据部门模糊查询
    public List<PerRetWAlt> deptnamess( String DEPTNAME){
    	return retwaltmapper.deptnamess(DEPTNAME);
    	
    }
	
	//已通过的申请
	public List<PerRetWAlt> selectyitouguos() {
		return retwaltmapper.selectyitouguos();
	}
	
	//已通过的申请模糊查询
	public List<PerRetWAlt> yitongguochax( String DEPTNAME){
		return retwaltmapper.yitongguochax(DEPTNAME);
		
	}
	
	//列入招聘计划的申请
	public List<PerRetWAlt> selectrecplans() {
		return retwaltmapper.selectrecplans();
	}
	
	//招聘计划的模糊查询
	public List<PerRetWAlt> selectmohurecplans(String EMPNAME){
		return retwaltmapper.selectmohurecplans(EMPNAME);
	}
	
	//下拉列表--部门
	public List<PerPmsDept> selectDept() {
		return  (List<PerPmsDept>)deptdao.findAll();
	}
	
	//下拉类表--员工
	public List<PerPmsEmp> selectemp(){
		return (List<PerPmsEmp>) empdao.findAll();
	}
	//下拉类表--职位
	public List<PerPmsPot> selectpot(){
		return (List<PerPmsPot>) potdao.findAll();
	}
	
	//下拉列表--技术
	public List<PerPmsZJnxx> selectjineng(){
		return retwaltmapper.selectjineng();
	}
	
	//新增申请单
	public void addxz(PerRetWAlt retwalt) {
		perretdao.save(retwalt);
	}
	
	//获取招聘发布表id
	public List<PerRetWAlt> updatezhuangtai(Integer waltid){
		return retwaltmapper.updatezhuangtai(waltid);
	}
	//负责人id
    public List<PerRetWAlt> updatefuzeren(Integer fuzerenid){
    	return retwaltmapper.updatefuzeren(fuzerenid);
    }
	//状态修改为申请失败
    public void waltdfouding(Integer waltid) {
    	PerRetWAlt walt=perretdao.findById(waltid).get();
    	walt.setAltstat("0");
    	perretdao.save(walt);
    }
    //状态修改为未通过
    public void waltdahui(Integer waltid) {
    	PerRetWAlt walt=perretdao.findById(waltid).get();
    	walt.setAltstat("1");
    	perretdao.save(walt);
    }
	//状态修改为已通过
	public void waltxiugai(Integer waltid) {
		PerRetWAlt walt=perretdao.findById(waltid).get();
		walt.setAltstat("2");
		perretdao.save(walt);
	}

    //状态修改为招聘申请中
    public void waltyitouguo(Integer waltid) {
    	PerRetWAlt walt=perretdao.findById(waltid).get();
    	walt.setAltstat("3");
    	perretdao.save(walt);
    }
    //状态修改为计入招聘计划
    public void waltjihua(Integer waltid) {
    	PerRetWAlt walt=perretdao.findById(waltid).get();
    	walt.setAltstat("4");
    	perretdao.save(walt);
    }
    //状态修改为开始计划
    public void kaishijihua(Integer waltid) {
    	PerRetWAlt walt=perretdao.findById(waltid).get();
    	walt.setAltstat("5");
    	perretdao.save(walt);
    }
}
